1. Field of the Invention
The present invention relates generally to data processing and, more specifically, to object-oriented programming systems and processes.
2. Description of the Related Art
Electronic mail or "e-mail", as it is widely known, refers to messages that are sent from one computer user to another over interconnected computer networks. Computer systems that support e-mail facilitate such message transfer by providing a means for composing messages, transferring them from the message originator to the intended recipient, notifying the recipient and reporting to the originator upon message receipt, and placing messages in the proper format for transmission over the networks.
Early e-mail systems comprised terminal-to-terminal message transfer between users at a common computer site, or between users at different computer sites who used common data processing equipment. For example, some early e-mail systems used simple file transfer protocols for intra-network communication specifying predefined message header data fields that identified originators and recipients with respective network terminal nodes, followed by message text. Many modem e-mail systems support information types including ASCII text, analog facsimile (fax) data, digital fax data, digital voice data, videotex, and many others.
In response to the desire for inter-computer network communications, a variety of communication protocols evolved to define more versatile e-mail message systems. Two examples of network communications protocols are the Systems Network Architecture Distribution Services (SNADS) protocol specified for networks communicating according to the Systems Network Architecture specification of the International Business Machines Corporation (IBM Corporation) and what is known as the Simple Mail Transfer Protocol (SMTP). Other networks include the Message-Oriented Text Interchange Systems (MOTIS) standard developed by the International Organization for Standardization (ISO) and USENET, a Unix-based network protocol.
Mail server systems easily process messages that are composed according to the protocol of the mail server system, often referred to as the "native" protocol. Message transfer among users that communicate with different protocols typically must be routed through a network gateway processor that transforms the message from the foreign protocol to the native protocol. Thus, gateways that are used for message transfer among interconnected networks, such as over what is commonly referred to as the "Internet", accept e-mail messages from other gateways and from connected networks. Users on connected networks may be connected to the gateway via a local area network (LAN) connection. If a message is from another gateway, a check is made to determine if the recipient identified in the message is local. That is, the recipient might be a computer user on the LAN of the receiving gateway. If the recipient is local to the gateway, the message is delivered to a gateway network mailbox or other delivery mechanism where the message can be retrieved by the recipient. If the recipient is not local, then the message is sent on to another gateway. If a message is from an originator, that is, a gateway LAN user who has just created the message, then the message is checked for valid format and syntax. The message is then treated as a message received from another gateway, meaning it is sent on its way to the gateway of another network.
Thus, each gateway can include a computer network that operates in accordance with a native protocol. Each gateway can potentially be required to recognize (and determine appropriate information of) a message generated from a different protocol. For example, a SNADS-protocol gateway might receive a MOTIS-standard message. If the SNADS gateway is to move the message along toward its intended recipient, the gateway must first convert or transform the message into a SNADS protocol so the message can travel on the SNADS gateway network. The gateway that receives the message might have to make a similar conversion. Conversion between protocols can become difficult because features supported by one protocol might be unknown to another protocol. Also, one protocol might be based on a particular communications model that is different from another. For example, the SNADS system is based on a communication session (with concomitant message parameters) while the SMTP system model is not session based.
Many e-mail system gateways cannot efficiently perform the needed message processing tasks to convert between different message protocols. Moreover, many e-mail systems require extensive modification before they can support and manage protocols other than the ones for which they were originally designed. Thus, such systems will experience high maintenance costs as new protocols are developed or as the system users decide to utilize non-native protocols. It would be advantageous if e-mail system gateways could quickly and efficiently support and manage message processing between multiple protocols and adapt to new ones.
From the discussion above, it should be apparent that there is a need for an electronic mail inter-protocol gateway mechanism that can efficiently receive e-mail messages from a sending location in one protocol and transfer such messages to a destination location in another protocol, and that can adapt to new protocols so that messages in the new protocol can be received and transferred. The present invention satisfies this need.